#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include "ABWindow.h"

class ProgressBar;
class TerrainWindow;

class MainWindow : public ABWindow
{
public:
	MainWindow();
	virtual ~MainWindow();

	bool Setup(HWND a_parent, HINSTANCE a_hInst, int a_xPos, int a_yPos, int a_width, int a_height, char* a_pWindowName, char* a_pClassName, DWORD a_style);
	void Update();

	virtual void Activate(WPARAM a_wParam);
	virtual void Close();
	virtual void Destroy();
	virtual void RButtonDown(WPARAM a_wParam, int a_x, int a_y);
	virtual void Size(int a_w, int a_h, LPARAM a_lParam);
	virtual void Command(int a_id, int a_cmd, LPARAM a_msg);
	virtual void AfterMessages();
	virtual void ContextMenu(HWND a_hWnd, int a_x, int a_y);

private:
	bool CreateWindowMenu();
	bool CreateWindowToolbar();
	bool CreateWindowStatusbar();

	HWND m_hStatusBar;
	HWND m_hToolbar;
	int m_leftWindowWidth;

	ProgressBar* m_pProgressBar;

	TerrainWindow* m_pTerrainWindow;
};

#endif //MAINWINDOW_H